package com.kmxd.ams.infra.archive.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 整理规则
 *
 * @author nickbi
 * @since 2022-07-30
 */
@Data
@TableName("s_archive_rule_main")
public class ArchiveRuleMain implements Serializable {

  private static final long serialVersionUID = 1L;

  /** 主键ID */
  private Long id;

  /** 门类配置id 关联s_archive_type表主键 */
  private Long archTypeId;

  /** 名称 对应线框图中的版本名称 */
  private String name;

  /** 生效年度 由于初始版本需要显示0000，因此将类型从smallint调整为varchar */
  private Integer validYear;

  /** 整理流程方式 整理流程方式：1 分散采集，集中整理2 分散采集，分散整理（自主编号） 对应界面： 1整理人可编号，2各部门自行编号，3档案室集中编号 */
  private Integer collectWay;

  /** 档号规则-流水号位数 1-4，分别代表1-4位（参考sys_increase：length） */
  private Integer codeLen;

  /** 组卷-卷内文件序号位数 1-4，分别代表1-4位 */
  private Integer volCodeLen;

  /**
   * 组卷-卷内文件页号0每个文件都需标明起止页号，如1~5,6~10,11~201每个文件标明起页号，最后一个标明起止页号，如1、6、11、21~25
   * 以上的起止页号连接符由volpagesep字段来决定是哪个符号
   */
  private Integer volPageNo;

  /** 组卷-起止页号连接符 -，—，~ */
  private String volPageSep;
  /** JSON二维表格结构-电子章样式 */
  private String sealStyle;

  /** 启用电子印章 */
  private Boolean enableSeal;

  /** 盒-流水号位数 1-4，分别代表1-4位 */
  private Integer boxCodeLen;

  /** 组卷-是否自动生成卷内文件档号 1是0否 */
  private Integer volAutoCode;

  /** 机构问题 */
  private String boxOrg;

  /** 创建人 */
  @TableField(fill = FieldFill.INSERT)
  private Long createBy;

  /** 创建时间 */
  @TableField(fill = FieldFill.INSERT)
  private Date createTime;

  /** 更新人 */
  @TableField(fill = FieldFill.INSERT_UPDATE)
  private Long updateBy;

  /** 更新时间 */
  @TableField(fill = FieldFill.INSERT_UPDATE)
  private Date updateTime;
}
